// Jest Snapshot v1, https://goo.gl/fbAQLP

exports[`exports_optional_prop.js 1`] = `
// @flow

declare class Foo {
  bar?: () => string
}

export {Foo};
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// @flow

declare class Foo {
  bar?: () => string;
}

export { Foo };

`;

exports[`test.js 1`] = `
class C {
  C() { }
  foo() { }
  static bar() { }
  qux() { this.constructor.x; }
}
C.x;
(new C).foo.x;
C.bar.x;

import {Foo} from './exports_optional_prop';
const foo = new Foo();
(foo.bar(): string); // error, could be undefined

function f(x) {
  (x.bar(): string); // error. caused by \`f(foo)\`; annotate x to track it down.
}
f(foo);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
class C {
  C() {}
  foo() {}
  static bar() {}
  qux() {
    this.constructor.x;
  }
}
C.x;
new C().foo.x;
C.bar.x;

import { Foo } from "./exports_optional_prop";
const foo = new Foo();
(foo.bar(): string); // error, could be undefined

function f(x) {
  (x.bar(): string); // error. caused by \`f(foo)\`; annotate x to track it down.
}
f(foo);

`;
